package com.desay.pangoo.itmt.service;

import java.util.List;

import com.desay.pangoo.itmt.dto.LlmCompletionDTO;
import com.desay.pangoo.itmt.dto.LlmCompletionRespDTO;
import com.desay.pangoo.itmt.dto.LlmInitDTO;
import com.desay.pangoo.itmt.entity.TechProjectInfoEntity;

import cn.hutool.json.JSONObject;

/**
 * 对接AI大模型算法端的接口服务
 *
 * @author uids1175
 */
public interface LLMService {

	/**
	 * 初始化大模型服务
	 */
	void initLlm(LlmInitDTO dto);

	/**
	 * 大模型生成流式文本接口
	 *
	 * @param dto
	 *            参数实体
	 * @return 流式数据
	 */
	LlmCompletionRespDTO completion(LlmCompletionDTO dto);

	LlmCompletionRespDTO summary(LlmCompletionDTO dto);

	Boolean sendTechProject(List<TechProjectInfoEntity> techProjectInfoEntityList);

	JSONObject treeRelated(JSONObject data);

	/**
	 * 提案对应字段的优化
	 *
	 * @param data
	 *            参数
	 * @return 结果
	 */
	JSONObject projectChart(JSONObject data);
}
